// 修饰属性

//target 类 name 类的属性 descritpor属性的描述器
function readonly(target, name, descriptor) { 
    console.log(descriptor)
    descriptor.writable=false;
}
class Circle {
    @readonly PI = 3.14;  // 说明这是实例的属性
}
let cl = new Circle();
cl.PI = 3.15;
console.log(cl.PI);
//console.log("circle" + Circle.prototype.PI); //打出来是undefind，

// var obj = {};
// obj.name = "jd"; //添加一个属性
// //还有一个添加方法
//  Object.defineProperty(obj,"age",{
//      value:9,
//      enumerable:false,//是否可枚举
//      writable:true, //是否可修改
//      configurable:false //是否可配置，例delete 
//  })